//package com.lottery.service.pc28.lobbyService.impl;
//
//import com.alibaba.fastjson.JSON;
//import com.lottery.dao.pc28.bettingDao.BettingLimitationDao;
//import com.lottery.dao.pc28.lobbyDao.BettinginfoDao;
//import com.lottery.dao.pc28.wealthDao.AccountDao;
//import com.lottery.dto.AccountTransactionDto;
//import com.lottery.dto.BetInfoDto;
//import com.lottery.dto.ResultDto;
//import com.lottery.entity.Account;
//import com.lottery.entity.BettingLimitation;
//import com.lottery.entity.Bettinginfo;
//import com.lottery.entity.Playwayinfo;
//import com.lottery.service.pc28.JedisClient;
//import com.lottery.service.pc28.lobbyService.BetNoticeService;
//import com.lottery.service.pc28.lobbyService.PlaywayinfoService;
//import com.lottery.service.pc28.lobbyService.RuleService;
//import com.lottery.service.pc28.wealthService.WithdrawalsService;
//import com.lottery.utils.RandCodeUtil;
//import com.lottery.utils.TouristData;
//import org.slf4j.Logger;
//import org.slf4j.LoggerFactory;
//import org.springframework.beans.factory.annotation.Autowired;
//import org.springframework.beans.factory.annotation.Value;
//import org.springframework.stereotype.Service;
//import org.springframework.transaction.annotation.Transactional;
//
//import javax.annotation.PostConstruct;
//import java.text.SimpleDateFormat;
//import java.util.*;
//import java.util.regex.Matcher;
//import java.util.regex.Pattern;
//
//@Service
//public class RuleServiceImpl implements RuleService {
//
//	// 日志
//	private final Logger logger = LoggerFactory.getLogger(this.getClass());
//
//	@Autowired
//	private PlaywayinfoService playwayinfoService;
//
//	@Autowired
//	private BettinginfoDao bettinginfoDao;
//
//	@Autowired
//	private BetNoticeService betNoticeService;
//
//	@Autowired
//	private JedisClient jedisClient;
//
//	@Autowired
//	private AccountDao accountDao;
//
//	@Autowired
//	private WithdrawalsService withdrawalsService;
//
//	@Autowired
//	private BettingLimitationDao bettingLimitationDao;
//
//	// 下一次开奖的时间
//	@Value("${PC28NEXTTIME}")
//	private String PC28NEXTTIME;
//
//	// 下一次开奖的期号
//	@Value("${PC28NEXTEXPECT}")
//	private String PC28NEXTEXPECT;
//
//	// 下一次开奖的时间
//	@Value("${SSCNEXTTIME}")
//	private String  SSCNEXTTIME;
//
//	// 下一次开奖的期号
//	@Value("${SSCNEXTEXPECT}")
//	private String SSCNEXTEXPECT;
//
//	// 每个用户每期最高下注金额
//	@Value("${MAXMONEY}")
//	private String MAXMONEY;
//
//	private Map<String, String> pc28BetWayMap;
//
//	private Map<String,String> SscBetWayMap;
//
//	@PostConstruct
//	public void init() {
//		pc28BetWayMap = new HashMap<String, String>();
//		pc28BetWayMap.put("大", "大小单双玩法");
//		pc28BetWayMap.put("小", "大小单双玩法");
//		pc28BetWayMap.put("单", "大小单双玩法");
//		pc28BetWayMap.put("双", "大小单双玩法");
//		pc28BetWayMap.put("大单", "大小单双玩法");
//		pc28BetWayMap.put("大双", "大小单双玩法");
//		pc28BetWayMap.put("小单", "大小单双玩法");
//		pc28BetWayMap.put("小双", "大小单双玩法");
//		pc28BetWayMap.put("大14", "大小单双玩法");
//		pc28BetWayMap.put("小13", "大小单双玩法");
//		pc28BetWayMap.put("极大", "猜数字玩法");
//		pc28BetWayMap.put("极小", "猜数字玩法");
//		pc28BetWayMap.put("顺子", "猜数字玩法");
//		pc28BetWayMap.put("对子", "猜数字玩法");
//		pc28BetWayMap.put("豹子", "猜数字玩法");
//		pc28BetWayMap.put("合", "猜合");
//		pc28BetWayMap.put("数字", "数字玩法");
//		pc28BetWayMap.put("组合", "数字组合玩法");
//		pc28BetWayMap.put("定位", "数字定位玩法");
//
//		SscBetWayMap = new HashMap<>();
//		SscBetWayMap.put("大", "大小单双玩法");
//		SscBetWayMap.put("小", "大小单双玩法");
//		SscBetWayMap.put("单", "大小单双玩法");
//		SscBetWayMap.put("双", "大小单双玩法");
//		SscBetWayMap.put("大单", "大小单双玩法");
//		SscBetWayMap.put("大双", "大小单双玩法");
//		SscBetWayMap.put("小单", "大小单双玩法");
//		SscBetWayMap.put("小双", "大小单双玩法");
//		SscBetWayMap.put("龙", "大小单双玩法");
//		SscBetWayMap.put("虎", "大小单双玩法");
//		SscBetWayMap.put("合", "大小单双玩法");
//		SscBetWayMap.put("杂六", "趣味玩法");
//		SscBetWayMap.put("牛牛","斗牛玩法");
//		SscBetWayMap.put("牛一","斗牛玩法");
//		SscBetWayMap.put("牛二","斗牛玩法");
//		SscBetWayMap.put("牛三","斗牛玩法");
//		SscBetWayMap.put("牛四","斗牛玩法");
//		SscBetWayMap.put("牛五","斗牛玩法");
//		SscBetWayMap.put("牛六","斗牛玩法");
//		SscBetWayMap.put("牛七","斗牛玩法");
//		SscBetWayMap.put("牛八","斗牛玩法");
//		SscBetWayMap.put("牛九","斗牛玩法");
//		SscBetWayMap.put("无牛","斗牛玩法");
//	}
//
//	/**
//	 * 判断是否为整数
//	 *
//	 * @param str
//	 * @return
//	 */
//	private static boolean isInteger(String str) {
//
//		Pattern pattern = Pattern.compile("[0-9]+");
//		Matcher matcher = pattern.matcher((CharSequence) str);
//
//		return matcher.matches();
//
//	}
//
//	/**
//	 * 将数组的数据copy到一个新的数组
//	 *
//	 * @param array
//	 * @return
//	 */
//	private static String[] copyArray(String[] array) {
//
//		String[] strArray = new String[(array.length) - 1];
//
//		// 将array数组copy到strArray数组
//		System.arraycopy(array, 1, strArray, 0, strArray.length);
//
//		return strArray;
//
//	}
//
//	/**
//	 * 验证玩法
//	 */
//	@Transactional(rollbackFor = Exception.class)
//	public String pc28PlayWay(List<BetInfoDto> betInfoDtos, int userId, int lotteyType) throws Exception {
//
//		Map<String, Object> maxMap = new HashMap<String, Object>();
//
//		List<Bettinginfo> bettinginfoList = new ArrayList<Bettinginfo>();
//
//		List<String> msgList = new ArrayList<>();
//
//		boolean flg = false;
//
//		int amountMoney = 0;
//
//		// 获取开奖时间
//		String nextTime = jedisClient.get(PC28NEXTTIME);
//		long openTime = 0;
//		try {
//			// 开奖前半分钟
//			openTime = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").parse(nextTime).getTime() - 1000 * 30;
//
//		} catch (java.text.ParseException e) {
//			e.printStackTrace();
//		}
//
//		// 获取当前时间毫秒数
//		long nowTime = System.currentTimeMillis();
//		// 在开奖前半分钟和开奖完成之前不能下注
//		if (nowTime > openTime || !LotteryDrawServiceImpl.bl) {
//			maxMap.put("result", "1");
//			maxMap.put("msg", "当前时间停止下注！");
//			maxMap.put("state", "3");
//			return JSON.toJSONString(maxMap, true);
//		}
//
//		// 如果为空返回结果
//		if (null == betInfoDtos || betInfoDtos.size() == 0) {
//			maxMap.put("result", "2");
//			maxMap.put("msg", "输入格式不正确");
//			return JSON.toJSONString(maxMap, true);
//		}
//
//		// 获取下一期期号
//		String nextExpect = jedisClient.get(PC28NEXTEXPECT);
//
//		// 获取账户余额
//		Account account = accountDao.selectAccountByUserId(userId);
//		if (null == account) {
//			maxMap.put("result", "4");
//			maxMap.put("msg", "该账户不存在");
//			return JSON.toJSONString(maxMap, true);
//		}
//		double accountFunds = account.getAccountFunds();
//		try {
//			for (BetInfoDto betInfo : betInfoDtos) {
//				flg = false;
//				String betRule = betInfo.getOutcomeName();
//				int betMoney = Integer.parseInt(betInfo.getOutcomeMoney());
//				logger.debug("bet,money,{},{}", betRule, betMoney);
//				Bettinginfo bettinginfo = new Bettinginfo();
//				// 大小单双玩法 下注单100 双100 大单100
//				// if (("大".equals(betRule) || "小".equals(betRule) ||
//				// "单".equals(betRule) || "双".equals(betRule))) {
//				// bettinginfo.setPlaywayName("大小单双玩法");
//				// } else if (("大单".equals(betRule) || "小单".equals(betRule) ||
//				// "大双".equals(betRule) || "小双".equals(betRule))) {
//				// bettinginfo.setPlaywayName("大小单双玩法");
//				// } else if ("极大".equals(betRule) || "极小".equals(betRule) ||
//				// "对子".equals(betRule) || "顺子".equals(betRule)) {
//				// bettinginfo.setPlaywayName("猜数字玩法");
//				// } else if ("单点".equals(betRule.substring(0, 2))) {
//				// bettinginfo.setPlaywayName("单点");
//				// }
//
//				if (pc28BetWayMap.containsKey(betRule)) {
//					bettinginfo.setPlaywayName(pc28BetWayMap.get(betRule));
//				} else if ("单点".equals(betRule.substring(0, 2))) {
//					bettinginfo.setPlaywayName("单点");
//				}
//
//				flg = true;
//				bettinginfo.setUserId(userId);
//				bettinginfo.setLotteyType(lotteyType);
//				bettinginfo.setBettingrule(betRule);
//				int bettingnumber = betMoney;
//				bettinginfo.setBettingnumber(bettingnumber);
//				bettinginfo.setExpect(nextExpect);
//				bettinginfo.setState(2);
//				Date date = new Date();
//				bettinginfo.setBettingDate(date);
//				bettinginfo.setPayDate(date);
//				// 查询playwayinfo表信息
//				Map<String, Object> params = new HashMap<>();
//				params.put("playwayName", bettinginfo.getPlaywayName());
//				params.put("lotteyType", lotteyType);
//				ResultDto<Playwayinfo> playwayinfo = playwayinfoService.selectPlaywayinfoByName(params);
//				bettinginfo.setPlaywayinfoId(playwayinfo.getData().getId());
//				int eachMoney = playwayinfo.getData().getEachMoney();
//				int bettingmoney = eachMoney * bettingnumber;
//				bettinginfo.setBettingmoney(bettingmoney);
//				bettinginfoList.add(bettinginfo);
//				amountMoney = amountMoney + bettingmoney;
//
//				SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
//				String dateNow = sdf.format(date);
//
//				String msg = "您于" + dateNow + "投注的第" + nextExpect + "期:" + betRule + ",投注成功！" + "投注金额:" + betMoney
//						+ "彩钻.账户余额:" + String.format("%.2f", (accountFunds - betMoney)) + "彩钻.";
//				// String msg = "您于" + dateNow + "投注的第" + nextExpect + "期:" +
//				// betRule + ",投注成功！" + "投注金额:" + betMoney
//				// + "彩钻.账户余额:" + String.format("%.2f", (accountFunds - betMoney) -
//				// 0.005) + "彩钻.";
//				msgList.add(msg);
//				accountFunds = (accountFunds - betMoney);
//				// accountFunds = (accountFunds - betMoney) - 0.005;
//				// 判断上下限
//				ResultDto<String> overProof = overProof(userId, betMoney, nextExpect);
//				if (overProof.getState() == 1) {
//					maxMap.put("result", "7");
//					maxMap.put("msg", overProof.getMessage());
//					return JSON.toJSONString(maxMap, true);
//				}
//			}
//
//			// 判断是否为true
//			if (flg) {
//				// 判断余额是否充足
//				if (accountFunds < 0) {
//					maxMap.put("result", "6");
//					maxMap.put("msg", "您的余额不足,请充值！");
//					return JSON.toJSONString(maxMap, true);
//				}
//
//				// // 判断上下限
//				// ResultDto<String> overProof = overProof(userId, amountMoney,
//				// nextExpect);
//				// if (overProof.getStatus() == 1) {
//				// maxMap.put("result", "7");
//				// maxMap.put("msg", overProof.getMessage());
//				// return JSON.toJSONString(maxMap, true);
//				// }
//
//				// 自动从余额扣除投注金额
//				Account account1 = new Account();
//				// account1.setAccountFunds(accountFunds - amountMoney);
//				// account1.setUserId(userId);
//				// accountDao.updateAccount(account1);
//				account1.setAccountFunds(amountMoney);
//				account1.setUserId(userId);
//				int updateNum = accountDao.reduceAccount(account1);
//				if (updateNum == 0) {
//					maxMap.put("result", "8");
//					maxMap.put("msg", "您的余额不足,请充值！");
//					return JSON.toJSONString(maxMap, true);
//				}
//
//				// 中奖金额账户流水
//				AccountTransactionDto accountTransactionDto = new AccountTransactionDto();
//				accountTransactionDto.setUserId(userId);
//				accountTransactionDto.setMoneyGo("下注");
//				accountTransactionDto.setTransactionMoney(amountMoney);
//				accountTransactionDto.setTransactionType(3);
//				accountTransactionDto.setOrderId(RandCodeUtil.getOrderId());
//				accountTransactionDto.setState(1);
//				withdrawalsService.insertAccountTransactionDto(accountTransactionDto);
//
//				// 返回投注结果
//
//				maxMap.put("result", "0");
//				// String number = nextExpect.substring(nextExpect.length() - 3,
//				// nextExpect.length());
//				// StringBuffer stringBuffer = new StringBuffer();
//				// for (Bettinginfo bettinginfo : bettinginfoList) {
//				// String bettingrule = bettinginfo.getBettingrule();
//				// stringBuffer.append(bettingrule + " ");
//				// }
//				// String rule = stringBuffer.toString();
//
//				maxMap.put("msg", msgList);
//				maxMap.put("state", "2");
//				// 将订单号加入到下注信息表(同一期,同一人下注的为同一订单号), 执行添加方法
//				for (Bettinginfo betinfo : bettinginfoList) {
//					betinfo.setBetOrderID(accountTransactionDto.getOrderId());
//				}
//				// 执行添加方法
//				bettinginfoDao.insertBettinginfoList(bettinginfoList);
//
//				// 下注管道
//				StringBuffer sBuffer = new StringBuffer();
//				List<String> list = new ArrayList<>();
//				sBuffer.append("下注 ");
//				for (int i = 0; i < betInfoDtos.size(); i++) {
//					/*
//					 * if (i < (betInfoDtos.size() - 1)) {
//					 * sBuffer.append(betInfoDtos.get(i).getOutcomeName()).append(
//					 * betInfoDtos.get(i).getOutcomeMoney()) .append(" "); } else if (i ==
//					 * (betInfoDtos.size() - 1)) {
//					 * sBuffer.append(betInfoDtos.get(i).getOutcomeName()).append(
//					 * betInfoDtos.get(i).getOutcomeMoney()); }
//					 */
//					String mStr = "下注 " + betInfoDtos.get(i).getOutcomeName() + " "
//							+ betInfoDtos.get(i).getOutcomeMoney();
//					betNoticeService.insertBetNotice(userId, mStr, lotteyType);
//					// list.add(mStr);
//				}
//				/* String params = sBuffer.toString(); */
//				/*
//				 * betNoticeService.insertBetNotice(userId, jsonArray.toString(), lotteyType);
//				 */
//				/*
//				 * String jsonText = JSON.toJSONString(list, true);
//				 * betNoticeService.insertBetNotice(userId, jsonText.toString(), lotteyType);
//				 * logger.debug("jsonText::{}", jsonText);
//				 */
//
//			} else {
//				maxMap.put("result", "9");
//				maxMap.put("msg", "输入格式不正确");
//			}
//		} catch (Exception e) {
//			logger.error("Pc28playAway error:", e);
//			throw new Exception("Pc28playAway error");
//		}
//
//		return JSON.toJSONString(maxMap, true);
//	}
//
//	/*
//	 * pc28游客下注信息
//	 */
//	public String pc28TourPlayWay(List<BetInfoDto> betInfoDtos, int userId, int lotteyType) {
//		/*
//		 * String string = null; String param = "下注 " + string;
//		 * logger.info("param参数:{},id参数:{}", param, userId);
//		 */
//
//		Map<String, Object> maxMap = new HashMap<String, Object>();
//
//		List<Bettinginfo> bettinginfoList = new ArrayList<Bettinginfo>();
//
//		List<String> msgList = new ArrayList<>();
//
//		boolean flg = false;
//
//		int amountMoney = 0;
//
//		// 获取开奖时间
//		String nextTime = jedisClient.get(PC28NEXTTIME);
//		long openTime = 0;
//		try {
//			// 开奖前半分钟
//			openTime = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").parse(nextTime).getTime() - 1000 * 30;
//
//		} catch (java.text.ParseException e) {
//			e.printStackTrace();
//		}
//
//		// 获取当前时间毫秒数
//		long nowTime = System.currentTimeMillis();
//		// 在开奖前半分钟和开奖完成之前不能下注
//		if (nowTime > openTime || !LotteryDrawServiceImpl.bl) {
//			maxMap.put("result", "1");
//			maxMap.put("msg", "当前时间停止下注！");
//			maxMap.put("state", "3");
//			return JSON.toJSONString(maxMap, true);
//		}
//
//		// 如果为空返回结果
//		if (null == betInfoDtos || betInfoDtos.size() == 0) {
//			maxMap.put("result", "2");
//			maxMap.put("msg", "输入格式不正确");
//			return JSON.toJSONString(maxMap, true);
//		}
//		/*
//		 * // 用空格分割字符串 String[] array = param.split("\\s+"); // 不是"下注"返回结果 if
//		 * (!"下注".equals(array[0])) { maxMap.put("result", "3"); maxMap.put("msg",
//		 * "输入格式不正确"); return JSON.toJSONString(maxMap, true); }
//		 *
//		 * // 将array数组copy到strArray数组 String[] strArray = copyArray(array);
//		 */
//		// 获取下一期期号
//		String nextExpect = jedisClient.get(PC28NEXTEXPECT);
//
//		// 获取账户余额
//		double accountFunds = Double.parseDouble(jedisClient.hget(userId + "", "amount"));
//		// 需加单点玩法的投注验证是否正确
//
//		/*
//		 * if (strArray == null || (strArray != null && strArray.length == 0)) {
//		 * maxMap.put("result", "4"); maxMap.put("msg", "输入格式不正确"); return
//		 * JSON.toJSONString(maxMap, true); }
//		 */
//
//		for (BetInfoDto betInfo : betInfoDtos) {
//
//			flg = false;
//
//			/*
//			 * String one = ""; String oneAfter = ""; if (str.length() >= 1) { one =
//			 * str.substring(0, 1); oneAfter = str.substring(1); } // 截取所有的前两个字符串 String two
//			 * = ""; String twoAfter = ""; if (str.length() >= 2) { two = str.substring(0,
//			 * 2); twoAfter = str.substring(2); } // 单点玩法的切割 String three = ""; String
//			 * threePlay = ""; String threeAfter = ""; if (str.length() >= 7) { three =
//			 * str.substring(0, 2); threePlay = str.substring(2, 4); threeAfter =
//			 * str.substring(5); }
//			 */
//			String betRule = betInfo.getOutcomeName();
//			int betMoney = Integer.parseInt(betInfo.getOutcomeMoney());
//
//			/*
//			 * // 大小单双玩法 下注单100 双100 大单100 if (("大".equals(one) || "小".equals(one) ||
//			 * "单".equals(one) || "双".equals(one)) && isInteger(oneAfter)) { flg = true;
//			 * Bettinginfo bettinginfo = new Bettinginfo(); bettinginfo.setUserId(userId);
//			 * bettinginfo.setLotteyType(lotteyType); bettinginfo.setPlaywayName("大小单双玩法");
//			 * bettinginfo.setBettingrule(str); int bettingnumber =
//			 * Integer.parseInt(oneAfter); bettinginfo.setBettingnumber(bettingnumber);
//			 * bettinginfo.setExpect(nextExpect); bettinginfo.setState(2); Date date = new
//			 * Date(); bettinginfo.setBettingDate(date); bettinginfo.setPayDate(date); //
//			 * 查询playwayinfo表信息 Map<String, Object> params = new HashMap<>();
//			 * params.put("playwayName", bettinginfo.getPlaywayName());
//			 * params.put("lotteyType", lotteyType); ResultDto<Playwayinfo> playwayinfo =
//			 * playwayinfoService.selectPlaywayinfoByName(params);
//			 *
//			 * bettinginfo.setPlaywayinfoId(playwayinfo.getData().getId()); int eachMoney =
//			 * playwayinfo.getData().getEachMoney(); int bettingmoney = eachMoney *
//			 * bettingnumber; bettinginfo.setBettingmoney(bettingmoney);
//			 * TouristData.touristPc28Betting.get(userId).add(bettinginfo);
//			 * bettinginfoList.add(bettinginfo); amountMoney = amountMoney + bettingmoney; }
//			 * else if (("大单".equals(two) || "小单".equals(two) || "大双".equals(two) ||
//			 * "小双".equals(two)) && isInteger(twoAfter)) { flg = true; Bettinginfo
//			 * bettinginfo = new Bettinginfo(); bettinginfo.setUserId(userId);
//			 * bettinginfo.setLotteyType(lotteyType); bettinginfo.setPlaywayName("大小单双玩法");
//			 * bettinginfo.setBettingrule(str); int bettingnumber =
//			 * Integer.parseInt(twoAfter); bettinginfo.setBettingnumber(bettingnumber);
//			 * bettinginfo.setExpect(nextExpect); bettinginfo.setState(2); Date date = new
//			 * Date(); bettinginfo.setBettingDate(date); bettinginfo.setPayDate(date); //
//			 * 查询playwayinfo表信息 Map<String, Object> params = new HashMap<>();
//			 * params.put("playwayName", bettinginfo.getPlaywayName());
//			 * params.put("lotteyType", lotteyType); ResultDto<Playwayinfo> playwayinfo =
//			 * playwayinfoService.selectPlaywayinfoByName(params);
//			 * bettinginfo.setPlaywayinfoId(playwayinfo.getData().getId()); int eachMoney =
//			 * playwayinfo.getData().getEachMoney(); int bettingmoney = eachMoney *
//			 * bettingnumber; bettinginfo.setBettingmoney(bettingmoney);
//			 * TouristData.touristPc28Betting.get(userId).add(bettinginfo);
//			 * bettinginfoList.add(bettinginfo); amountMoney = amountMoney + bettingmoney; }
//			 *
//			 * // 猜数字玩法 if (("极大".equals(two) || "极小".equals(two) || "对子".equals(two) ||
//			 * "顺子".equals(two) || "豹子".equals(two)) && isInteger(twoAfter)) { flg = true;
//			 * Bettinginfo bettinginfo = new Bettinginfo(); bettinginfo.setUserId(userId);
//			 * bettinginfo.setLotteyType(lotteyType); bettinginfo.setPlaywayName("猜数字玩法");
//			 * bettinginfo.setBettingrule(str); int bettingnumber =
//			 * Integer.parseInt(twoAfter); bettinginfo.setBettingnumber(bettingnumber);
//			 * bettinginfo.setExpect(nextExpect); bettinginfo.setState(2); Date date = new
//			 * Date(); bettinginfo.setBettingDate(date); bettinginfo.setPayDate(date); //
//			 * 查询playwayinfo表信息 Map<String, Object> params = new HashMap<>();
//			 * params.put("playwayName", bettinginfo.getPlaywayName());
//			 * params.put("lotteyType", lotteyType); ResultDto<Playwayinfo> playwayinfo =
//			 * playwayinfoService.selectPlaywayinfoByName(params);
//			 * bettinginfo.setPlaywayinfoId(playwayinfo.getData().getId()); int eachMoney =
//			 * playwayinfo.getData().getEachMoney(); int bettingmoney = eachMoney *
//			 * bettingnumber; bettinginfo.setBettingmoney(bettingmoney);
//			 * TouristData.touristPc28Betting.get(userId).add(bettinginfo);
//			 * bettinginfoList.add(bettinginfo); amountMoney = amountMoney + bettingmoney; }
//			 *
//			 * // 单点玩法,前段做验证,threePlay必须是两位数, 后台验证未加 if ("单点".equals(three) &&
//			 * isInteger(threePlay) && isInteger(threeAfter)) { if
//			 * (Integer.parseInt(threePlay) > 27) { maxMap.put("result", "5");
//			 * maxMap.put("msg", "输入格式不正确！"); return JSON.toJSONString(maxMap, true); } else
//			 * { flg = true; Bettinginfo bettinginfo = new Bettinginfo();
//			 * bettinginfo.setUserId(userId); bettinginfo.setLotteyType(lotteyType);
//			 * bettinginfo.setPlaywayName("单点"); bettinginfo.setBettingrule(str); int
//			 * bettingnumber = Integer.parseInt(threeAfter);
//			 * bettinginfo.setBettingnumber(bettingnumber);
//			 * bettinginfo.setExpect(nextExpect); bettinginfo.setState(2); Date date = new
//			 * Date(); bettinginfo.setBettingDate(date); bettinginfo.setPayDate(date); //
//			 * 查询playwayinfo表信息 Map<String, Object> params = new HashMap<>();
//			 * params.put("playwayName", bettinginfo.getPlaywayName());
//			 * params.put("lotteyType", lotteyType); ResultDto<Playwayinfo> playwayinfo =
//			 * playwayinfoService.selectPlaywayinfoByName(params);
//			 * bettinginfo.setPlaywayinfoId(playwayinfo.getData().getId()); int eachMoney =
//			 * playwayinfo.getData().getEachMoney(); int bettingmoney = eachMoney *
//			 * bettingnumber; bettinginfo.setBettingmoney(bettingmoney); // 将pc28游客下注信息放到内存
//			 * TouristData.touristPc28Betting.get(userId).add(bettinginfo);
//			 * bettinginfoList.add(bettinginfo); amountMoney = amountMoney + bettingmoney; }
//			 * }
//			 */
//
//			logger.debug("bet,money,{},{}", betRule, betMoney);
//			Bettinginfo bettinginfo = new Bettinginfo();
//			// 大小单双玩法 下注单100 双100 大单100
//			// if (("大".equals(betRule) || "小".equals(betRule) ||
//			// "单".equals(betRule) || "双".equals(betRule))) {
//			// bettinginfo.setPlaywayName("大小单双玩法");
//			// } else if (("大单".equals(betRule) || "小单".equals(betRule) ||
//			// "大双".equals(betRule) || "小双".equals(betRule))) {
//			// bettinginfo.setPlaywayName("大小单双玩法");
//			// } else if ("极大".equals(betRule) || "极小".equals(betRule) ||
//			// "对子".equals(betRule) || "顺子".equals(betRule)) {
//			// bettinginfo.setPlaywayName("猜数字玩法");
//			// } else if ("单点".equals(betRule.substring(0, 2))) {
//			// bettinginfo.setPlaywayName("单点");
//			// }
//
//			// 判断上下限
//			ResultDto<String> overProof = overProof(userId, betMoney, nextExpect);
//			if (overProof.getState() == 1) {
//				maxMap.put("result", "7");
//				maxMap.put("msg", overProof.getMessage());
//				return JSON.toJSONString(maxMap, true);
//			}
//
//			if (pc28BetWayMap.containsKey(betRule)) {
//				bettinginfo.setPlaywayName(pc28BetWayMap.get(betRule));
//			} else if ("单点".equals(betRule.substring(0, 2))) {
//				bettinginfo.setPlaywayName("单点");
//			}
//
//			flg = true;
//			bettinginfo.setUserId(userId);
//			bettinginfo.setLotteyType(lotteyType);
//			bettinginfo.setBettingrule(betRule);
//			int bettingnumber = betMoney;
//			bettinginfo.setBettingnumber(bettingnumber);
//			bettinginfo.setExpect(nextExpect);
//			bettinginfo.setState(2);
//			Date date = new Date();
//			bettinginfo.setBettingDate(date);
//			bettinginfo.setPayDate(date);
//			// 查询playwayinfo表信息
//			Map<String, Object> params = new HashMap<>();
//			params.put("playwayName", bettinginfo.getPlaywayName());
//			params.put("lotteyType", lotteyType);
//			ResultDto<Playwayinfo> playwayinfo = playwayinfoService.selectPlaywayinfoByName(params);
//			bettinginfo.setPlaywayinfoId(playwayinfo.getData().getId());
//			int eachMoney = playwayinfo.getData().getEachMoney();
//			int bettingmoney = eachMoney * bettingnumber;
//			bettinginfo.setBettingmoney(bettingmoney);
//			TouristData.touristPc28Betting.get(userId).add(bettinginfo);
//			bettinginfoList.add(bettinginfo);
//			amountMoney = amountMoney + bettingmoney;
//
//			SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
//			String dateNow = sdf.format(date);
//
//			// String msg = "您于" + dateNow + "投注的第" + nextExpect + "期:" +
//			// betRule + ",投注成功！" + "投注金额:" + betMoney
//			// + "彩钻.账户余额:" + String.format("%.2f", (accountFunds - betMoney) -
//			// 0.005) + "彩钻.";
//
//			String msg = "您于" + dateNow + "投注的第" + nextExpect + "期:" + betRule + ",投注成功！" + "投注金额:" + betMoney
//					+ "彩钻.账户余额:" + String.format("%.2f", (accountFunds - betMoney)) + "彩钻.";
//			msgList.add(msg);
//			accountFunds = (accountFunds - betMoney);
//
//		}
//
//		if (flg == false) {
//			maxMap.put("result", "5");
//			maxMap.put("msg", "输入格式不正确！");
//			return JSON.toJSONString(maxMap, true);
//		}
//
//		// 判断是否为true
//		if (flg) {
//			// 判断余额是否充足
//			if (accountFunds < 0) {
//				maxMap.put("result", "6");
//				maxMap.put("msg", "您的试玩账户余额不足！");
//				return JSON.toJSONString(maxMap, true);
//			}
//			// 自动从余额扣除投注金额
//			double balaAmount = accountFunds;
//			jedisClient.hset(userId + "", "amount", balaAmount + "");
//
//			// 返回投注结果
//			/*
//			 * Date date = new Date(); SimpleDateFormat sdf = new
//			 * SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); String dateNow = sdf.format(date);
//			 */
//			maxMap.put("result", "0");
//			maxMap.put("msg", msgList);
//			maxMap.put("state", "2");
//			// String number = nextExpect.substring(nextExpect.length() - 3,
//			// nextExpect.length());
//			/*
//			 * StringBuffer stringBuffer = new StringBuffer(); for (Bettinginfo bettinginfo
//			 * : bettinginfoList) { String bettingrule = bettinginfo.getBettingrule();
//			 * stringBuffer.append(bettingrule + " "); } String rule =
//			 * stringBuffer.toString();
//			 *
//			 * maxMap.put("msg", "您于" + dateNow + "投注的第" + nextExpect + "期:" +
//			 * rule.substring(0, rule.length() - 1) + ",投注成功！" + "投注金额:" + amountMoney +
//			 * "彩钻.账户余额:" + String.format("%.2f", (accountFunds - amountMoney) - 0.005) +
//			 * "彩钻."); maxMap.put("state", "2"); // 执行添加方法 //
//			 * bettinginfoService.insertBettinginfoList(bettinginfoList);
//			 *
//			 * String body = userId + "::" +
//			 * TouristData.touristInfo.get(userId).getTouristName() + "::" + 0 + "::" +
//			 * param; Message message = new Message(); message.setMessageBody(body);
//			 * message.setType("0"); message.setTimestamp(new Date().getTime()); MessageTube
//			 * messageTube = MessageTubes.getInstance().getPc28BetMessageTube(); int push =
//			 * messageTube.push(message); logger.debug("return index={}, {},{},{}",
//			 * messageTube.getHashCode(), push, message.getType(), body);
//			 */
//			// 下注管道
//			StringBuffer sBuffer = new StringBuffer();
//			sBuffer.append("下注 ");
//			for (int i = 0; i < betInfoDtos.size(); i++) {
//				/*
//				 * if (i < (betInfoDtos.size() - 1)) {
//				 * sBuffer.append(betInfoDtos.get(i).getOutcomeName()).append(
//				 * betInfoDtos.get(i).getOutcomeMoney()) .append(" "); } else {
//				 * sBuffer.append(betInfoDtos.get(i).getOutcomeName()).append(
//				 * betInfoDtos.get(i).getOutcomeMoney()); }
//				 */
//				String mStr = "下注 " + betInfoDtos.get(i).getOutcomeName() + " " + betInfoDtos.get(i).getOutcomeMoney();
//				betNoticeService.tourBetnotice(userId, mStr, lotteyType);
//			}
//			/*
//			 * String params = sBuffer.toString(); betNoticeService.insertBetNotice(userId,
//			 * params, lotteyType);
//			 */
//		} else {
//			maxMap.put("result", "9");
//			maxMap.put("msg", "输入格式不正确");
//		}
//
//		return JSON.toJSONString(maxMap, true);
//	}
//
//	// ssc游客下注
//	@Override
//	public String sscTourPlayWay(List<BetInfoDto> betInfoDtos, int userId, int lotteyType) {
//		// String param = "下注 " + string;
//		// logger.info("sscTourPlayWay param参数:{},id参数:{}", param, userId);
//
//		Map<String, Object> maxMap = new HashMap<String, Object>();
//
//		List<String> msgList = new ArrayList<>();
//
//		List<Bettinginfo> bettinginfoList = new ArrayList<Bettinginfo>();
//
//		boolean flg = false;
//
//		int amountMoney = 0;
//
//		// 获取开奖时间
//		String nextTime = jedisClient.get(SSCNEXTTIME);
//
//		long openTime = 0;
//		try {
//			// 开奖前半分钟
//			openTime = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").parse(nextTime).getTime() - 1000 * 30;
//
//		} catch (java.text.ParseException e) {
//			e.printStackTrace();
//		}
//
//		// 获取当前时间毫秒数
//		long nowTime = System.currentTimeMillis();
//		// 在开奖前半分钟和开奖完成之前不能下注
//		if (nowTime > openTime || !LotteryDrawServiceImpl.bl) {
//			maxMap.put("result", "1");
//			maxMap.put("msg", "当前时间停止下注！");
//			maxMap.put("state", "3");
//			return JSON.toJSONString(maxMap, true);
//		}
//
//		// 如果为空返回结果
//		// if (null == param || "".equals(param.trim())) {
//		// maxMap.put("result", "2");
//		// maxMap.put("msg", "输入格式不正确");
//		// return JSON.toJSONString(maxMap, true);
//		// }
//		// 用空格分割字符串
//		// String[] array = param.split("\\s+");
//		// 不是"下注"返回结果
//		// if (!"下注".equals(array[0])) {
//		// maxMap.put("result", "3");
//		// maxMap.put("msg", "输入格式不正确");
//		// return JSON.toJSONString(maxMap, true);
//		// }
//
//		// 将array数组copy到strArray数组
//		// String[] strArray = copyArray(array);
//
//		// 获取下一期期号
//		String nextExpect = jedisClient.get(SSCNEXTEXPECT);
//		double accountFunds = Double.parseDouble(jedisClient.hget(userId + "", "amount"));
//
//		// if (strArray == null || (strArray != null && strArray.length == 0)) {
//		// maxMap.put("result", "5");
//		// maxMap.put("msg", "输入格式不正确");
//		// return JSON.toJSONString(maxMap, true);
//		// }
//		for (BetInfoDto bet : betInfoDtos) {
//
//			flg = true;
//			String betRule = bet.getOutcomeName();
//			int betMoney = Integer.parseInt(bet.getOutcomeMoney());
//
//			Bettinginfo bettinginfo = new Bettinginfo();
//
//			if (SscBetWayMap.containsKey(betRule)) {
//				bettinginfo.setPlaywayName(SscBetWayMap.get(betRule));
//			} else {
//				if(betRule.contains("五星")||betRule.contains("组六复式")||betRule.contains("前三任选一码")){
//					bettinginfo.setPlaywayName("数字组合玩法");
//				}else if(betRule.contains("前中后三码")||betRule.contains("定位胆")||betRule.contains("任选二码组合")){
//					bettinginfo.setPlaywayName("数字定位玩法");
//				}else if(betRule.contains("一帆风顺")||betRule.contains("好事成双")||betRule.contains("三星报喜")||betRule.contains("四季发财")){
//					bettinginfo.setPlaywayName("数字玩法");
//				}else if(betRule.contains("豹子")||betRule.contains("顺子")||betRule.contains("对子")|| betRule.contains("半顺")){
//					bettinginfo.setPlaywayName("趣味玩法");
//				}
//			}
//
//			bettinginfo.setUserId(userId);
//			bettinginfo.setBettingrule(betRule);
//			int bettingnumber = betMoney;
//			bettinginfo.setBettingnumber(bettingnumber);
//			bettinginfo.setExpect(nextExpect);
//			bettinginfo.setState(2);
//			Date date = new Date();
//			bettinginfo.setBettingDate(date);
//			bettinginfo.setPayDate(date);
//			// 查询playwayinfo表信息
//			Map<String, Object> params = new HashMap<>();
//			params.put("playwayName", bettinginfo.getPlaywayName());
//			params.put("lotteyType", lotteyType);
//			ResultDto<Playwayinfo> playwayinfo = playwayinfoService.selectPlaywayinfoByName(params);
//			bettinginfo.setPlaywayinfoId(playwayinfo.getData().getId());
//			int eachMoney = playwayinfo.getData().getEachMoney();
//			int bettingmoney = eachMoney * bettingnumber;
//			bettinginfo.setBettingmoney(bettingmoney);
//			TouristData.touristBetting.get(userId).add(bettinginfo);
//			bettinginfoList.add(bettinginfo);
//			amountMoney = amountMoney + bettingmoney;
//
//			// 返回投注结果
//			SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
//			String dateNow = sdf.format(date);
//			accountFunds = accountFunds - betMoney;
//			String number = nextExpect.substring(nextExpect.length() - 3, nextExpect.length());
//			String mString = "您于" + dateNow + "投注的第" + number + "期:" + betRule + ",投注成功！" + "投注金额:" + betMoney
//					+ "彩钻.账户余额:" + String.format("%.2f", (accountFunds)) + "彩钻.";
//
//			// if (flg == false) {
//			// maxMap.put("result", "5");
//			// maxMap.put("msg", "输入格式不正确！");
//			// return JSON.toJSONString(maxMap, true);
//			// }
//			msgList.add(mString);
//		}
//
//		// 判断是否为true
//		if (flg) {
//			// 判断余额是否充足
//			if (accountFunds < 0) {
//				maxMap.put("result", "6");
//				maxMap.put("msg", "您的余额不足,请充值！");
//				return JSON.toJSONString(maxMap, true);
//			}
//
//			// 自动从余额扣除投注金额
//			double balaAmount = accountFunds;
//			jedisClient.hset(userId + "", "amount", balaAmount + "");
//
//			// 返回投注结果
//			maxMap.put("result", "0");
//			// Date date = new Date();
//			// SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd
//			// HH:mm:ss");
//			// String dateNow = sdf.format(date);
//			// maxMap.put("result", "0");
//			// String number = nextExpect.substring(nextExpect.length() - 3,
//			// nextExpect.length());
//			// StringBuffer stringBuffer = new StringBuffer();
//			// for (Bettinginfo bettinginfo : bettinginfoList) {
//			// String bettingrule = bettinginfo.getBettingrule();
//			// stringBuffer.append(bettingrule + " ");
//			// }
//			// String rule = stringBuffer.toString();
//
//			maxMap.put("msg", msgList);
//			maxMap.put("state", "2");
//			for (int i = 0; i < betInfoDtos.size(); i++) {
//				/*
//				 * if (i < (betInfoDtos.size() - 1)) {
//				 * sBuffer.append(betInfoDtos.get(i).getOutcomeName()).append(
//				 * betInfoDtos.get(i).getOutcomeMoney()) .append(" "); } else {
//				 * sBuffer.append(betInfoDtos.get(i).getOutcomeName()).append(
//				 * betInfoDtos.get(i).getOutcomeMoney()); }
//				 */
//				String mStr = "下注 " + betInfoDtos.get(i).getOutcomeName() + " " + betInfoDtos.get(i).getOutcomeMoney();
//				betNoticeService.tourBetnotice(userId, mStr, lotteyType);
//			}
//			// betNoticeService.tourBetnotice(userId, param, lotteyType);
//
//		} else {
//			maxMap.put("result", "9");
//			maxMap.put("msg", "输入格式不正确");
//		}
//		return JSON.toJSONString(maxMap, true);
//	}
//
//	// 判断上下限
//	public ResultDto<String> overProof(int userId, int money, String nextExpect) {
//		ResultDto<String> result = new ResultDto<String>();
//		BettingLimitation selectMaxMinBet = bettingLimitationDao.selectMaxMinBet();
//		int maxMoney = selectMaxMinBet.getBetMax();
//		int minMoney = selectMaxMinBet.getBetMin();
//
//		if (money < minMoney) {
//			result.setSuccess(false);
//			result.setMessage("下注金额小于最低限额!");
//			return result;
//		}
//
//		String nowMoney = jedisClient.get(MAXMONEY + userId + nextExpect);
//		if (nowMoney == null) {
//			if (money > maxMoney) {
//				result.setSuccess(false);
//				result.setMessage("您本期的的下注金额已大于最高限额!");
//				return result;
//			}
//			jedisClient.set(MAXMONEY + userId + nextExpect, money + "");
//			jedisClient.expire(MAXMONEY + userId + nextExpect, 600);
//			result.setSuccess(true);
//			return result;
//		} else {
//			int nowMoneyInt = Integer.parseInt(nowMoney);
//			if (nowMoneyInt + money > maxMoney) {
//				result.setSuccess(false);
//				result.setMessage("您本期的的下注金额已大于最高限额!");
//				return result;
//			} else {
//				jedisClient.set(MAXMONEY + userId + nextExpect, nowMoneyInt + money + "");
//				jedisClient.expire(MAXMONEY + userId + nextExpect, 600);
//				result.setSuccess(true);
//				return result;
//			}
//		}
//	}
//
//	/**
//	 * ssc正常下注
//	 * @param betInfoDtos
//	 * @param userId
//	 * @param lotteyType
//	 * @return
//	 * @throws Exception
//	 */
//	@Transactional(rollbackFor = Exception.class)
//	public String sscPlayWay(List<BetInfoDto> betInfoDtos, int userId, int lotteyType) throws Exception {
//		Map<String, Object> maxMap = new HashMap<String, Object>();
//
//		List<Bettinginfo> bettinginfoList = new ArrayList<Bettinginfo>();
//		List<String> msgList = new ArrayList<>();
//
//		boolean flg = false;
//
//		int amountMoney = 0;
//
//		// 获取开奖时间
//		String nextTime = jedisClient.get(SSCNEXTTIME);
//		logger.debug("nextTime参数**********************:{}", nextTime);
//		long openTime = 0;
//		try {
//			// 开奖前半分钟
//			openTime = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").parse(nextTime).getTime() - 1000 * 30;
//
//		} catch (java.text.ParseException e) {
//			e.printStackTrace();
//		}
//
//		// 获取当前时间毫秒数
//		long nowTime = System.currentTimeMillis();
//		// 在开奖前半分钟和开奖完成之前不能下注
//		if (nowTime > openTime || !LotteryDrawServiceImpl.bl) {
//			maxMap.put("result", "1");
//			maxMap.put("msg", "当前时间停止下注！");
//			return JSON.toJSONString(maxMap, true);
//		}
//
//
//		// 获取下一期期号
//		String nextExpect = jedisClient.get(SSCNEXTEXPECT);
//		logger.debug("nextExpect参数**********************:{}", nextExpect);
//		// 获取账户余额
//		Account account = accountDao.selectAccountByUserId(userId);
//		if (null == account) {
//			maxMap.put("result", "4");
//			maxMap.put("msg", "该账户不存在");
//			return JSON.toJSONString(maxMap, true);
//		}
//		double accountFunds = account.getAccountFunds();
//
//
//		try {
//			for (BetInfoDto str : betInfoDtos) {
//
//				flg = true;
//
//
//				String betRule = str.getOutcomeName();
//				int betMoney = Integer.parseInt(str.getOutcomeMoney());
//
//				Bettinginfo bettinginfo = new Bettinginfo();
//				// 大小单双玩法 下注单100 双100 大单100
//				if (SscBetWayMap.containsKey(betRule)) {
//					bettinginfo.setPlaywayName(SscBetWayMap.get(betRule));
//				} else {
//					if(betRule.contains("五星")||betRule.contains("组六复式")||betRule.contains("前三任选一码")){
//						bettinginfo.setPlaywayName("数字组合玩法");
//					}else if(betRule.contains("前中后三码")||betRule.contains("定位胆")||betRule.contains("任选二码组合")){
//						bettinginfo.setPlaywayName("数字定位玩法");
//					}else if(betRule.contains("一帆风顺")||betRule.contains("好事成双")||betRule.contains("三星报喜")||betRule.contains("四季发财")){
//						bettinginfo.setPlaywayName("数字玩法");
//					}else if(betRule.contains("豹子")||betRule.contains("顺子")||betRule.contains("对子")|| betRule.contains("半顺")){
//						bettinginfo.setPlaywayName("趣味玩法");
//					}
//				}
//				bettinginfo.setUserId(userId);
//				bettinginfo.setLotteyType(lotteyType);
//				bettinginfo.setBettingrule(betRule);
//				int bettingnumber = betMoney;
//				bettinginfo.setBettingnumber(bettingnumber);
//				bettinginfo.setExpect(nextExpect);
//				bettinginfo.setState(2);
//				Date date = new Date();
//				bettinginfo.setBettingDate(date);
//				bettinginfo.setPayDate(date);
//				// 查询playwayinfo表信息
//				Map<String, Object> params = new HashMap<>();
//				params.put("playwayName", bettinginfo.getPlaywayName());
//				params.put("lotteyType", lotteyType);
//				ResultDto<Playwayinfo> playwayinfo = playwayinfoService.selectPlaywayinfoByName(params);
//				bettinginfo.setPlaywayinfoId(playwayinfo.getData().getId());
//				int eachMoney = playwayinfo.getData().getEachMoney();
//				int bettingmoney = eachMoney * bettingnumber;
//				bettinginfo.setBettingmoney(bettingmoney);
//				bettinginfoList.add(bettinginfo);
//				amountMoney = amountMoney + bettingmoney;
//
//				// 判断上下限
//				ResultDto<String> overProof = overProof(userId, betMoney, nextExpect);
//				if (overProof.getState() == 1) {
//					maxMap.put("result", "6");
//					maxMap.put("msg", overProof.getMessage());
//					return JSON.toJSONString(maxMap, true);
//				}
//				// 封装下注结果
//				SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
//				String dateNow = sdf.format(date);
//				String number = nextExpect.substring(nextExpect.length() - 3, nextExpect.length());
//				accountFunds = accountFunds - betMoney;
//				String mString = "您于" + dateNow + "投注的第" + number + "期:" + betRule + ",投注成功！" + "投注金额:" + betMoney
//						+ "彩钻.账户余额:" + String.format("%.2f", (accountFunds)) + "彩钻.";
//				msgList.add(mString);
//			}
//
//			// 判断是否为true
//			if (flg) {
//				// 判断余额是否充足
//				if (accountFunds < 0) {
//					maxMap.put("result", "7");
//					maxMap.put("msg", "您的余额不足,请充值！");
//					return JSON.toJSONString(maxMap, true);
//				}
//
//				// 自动从余额扣除投注金额
//				Account account1 = new Account();
//				account1.setAccountFunds(amountMoney);
//				account1.setUserId(userId);
//				int updateNum = accountDao.reduceAccount(account1);
//				if (updateNum == 0) {
//					maxMap.put("result", "7");
//					maxMap.put("msg", "您的余额不足,请充值！");
//					return JSON.toJSONString(maxMap, true);
//				}
//
//				// 中奖金额账户流水
//				AccountTransactionDto accountTransactionDto = new AccountTransactionDto();
//				accountTransactionDto.setUserId(userId);
//				accountTransactionDto.setMoneyGo("下注");
//				accountTransactionDto.setTransactionMoney(amountMoney);
//				accountTransactionDto.setTransactionType(3);
//				accountTransactionDto.setOrderId(RandCodeUtil.getOrderId());
//				accountTransactionDto.setState(1);
//				withdrawalsService.insertAccountTransactionDto(accountTransactionDto);
//
//				// 返回投注结果
//
//				StringBuffer stringBuffer = new StringBuffer();
//				for (Bettinginfo bettinginfo : bettinginfoList) {
//					String bettingrule = bettinginfo.getBettingrule();
//					stringBuffer.append(bettingrule + " ");
//				}
//				String rule = stringBuffer.toString();
//				maxMap.put("result", "0");
//				maxMap.put("msg", msgList);
//				// 将订单号加入到下注信息表(同一期,同一人下注的为同一订单号), 执行添加方法
//				for (Bettinginfo betinfo : bettinginfoList) {
//					betinfo.setBetOrderID(accountTransactionDto.getOrderId());
//				}
//				bettinginfoDao.insertBettinginfoList(bettinginfoList);
//				// 下注管道
//				for (int i = 0; i < betInfoDtos.size(); i++) {
//					String mStr = "下注 " + betInfoDtos.get(i).getOutcomeName() + " "
//							+ betInfoDtos.get(i).getOutcomeMoney();
//					betNoticeService.insertBetNotice(userId, mStr, lotteyType);
//					// list.add(mStr);
//				}
//
//				// betNoticeService.insertBetNotice(userId, param, lotteyType);
//
//			} else {
//				maxMap.put("result", "5");
//				maxMap.put("msg", "输入格式不正确");
//				return JSON.toJSONString(maxMap, true);
//			}
//		} catch (Exception e) {
//			logger.error("sscplayAway error:", e);
//			throw new Exception("sscplayAway error");
//		}
//		return JSON.toJSONString(maxMap, true);
//	}
//
//}
